#include "stdafx.h"
#include "ckLandsatProperty.h"

namespace ck
{
	namespace data
	{
		LandsatProperty::LandsatProperty()
		{
			memset(&m_acquistionDate, 0, sizeof(ck_date_t));
			memset(&m_processingDate, 0, sizeof(ck_date_t));
		}

		LandsatProperty::~LandsatProperty()
		{
		}

		ckLandsatSensor	LandsatProperty::GetSensor()
		{
			return m_sensor;
		}

		void LandsatProperty::SetSensor(ckLandsatSensor sensor)
		{
			m_sensor = sensor;
		}

		ckLandsatSatellite LandsatProperty::GetSatellite()
		{
			return m_satellite;
		}

		void LandsatProperty::SetSatellite(ckLandsatSatellite satellite)
		{
			m_satellite = satellite;
		}

		void LandsatProperty::SetProccessingLevel(ckLandsatProcessingLevel level)
		{
			m_procLevel = level;
		}

		const char*	LandsatProperty::GetDataTypeAsString()
		{
			switch (m_procLevel)
			{
			case LSPL_L1GS:
				return "L1GS";
			case LSPL_L1GT:
				return "L1GT";
			case LSPL_L1TP:
				return "L1TP";
			}
			return "";
		}

		const char*	LandsatProperty::GetTXAsString()
		{
			switch (m_tx)
			{
			case ck::data::LS_TX_RT:
				return "RT";
			case ck::data::LS_TX_T1:
				return "T1";
			case ck::data::LS_TX_T2:
				return "T2";
			}
			return "";
		}

		ckLandsatProcessingLevel LandsatProperty::GetProccessingLevel()
		{
			return m_procLevel;
		}

		z_int32	LandsatProperty::GetPath()
		{
			return m_path;
		}

		void LandsatProperty::SetPath(z_int32 path)
		{
			m_path = path;
		}

		z_int32	LandsatProperty::GetRow()
		{
			return m_row;
		}

		void LandsatProperty::SetRow(z_int32 row)
		{
			m_row = row;
		}

		ck_date_t* LandsatProperty::GetAcquistionDate()
		{
			return &m_acquistionDate;
		}

		void LandsatProperty::SetAcquistionDate(ck_date_t* date)
		{
			if (date)
			{
				memcpy(&m_acquistionDate, date, sizeof(ck_date_t));
			}
		}

		ck_date_t* LandsatProperty::GetProcessingDate()
		{
			return &m_processingDate;
		}

		void LandsatProperty::SetProcessingDate(ck_date_t* date)
		{
			if (date)
			{
				memcpy(&m_processingDate, date, sizeof(ck_date_t));
			}
		}

		z_int32	LandsatProperty::GetCollectionNumbrer()
		{
			return m_collectionNumbrer;
		}

		void LandsatProperty::SetCollectionNumbrer(z_int32 cn)
		{
			m_collectionNumbrer = cn;
		}

		ckLandsatTX LandsatProperty::GetTX()
		{
			return m_tx;
		}

		void LandsatProperty::SetTX(ckLandsatTX tx)
		{
			m_tx = tx;
		}


	}
}

